package com.choichumgming.rentcat.service;
import com.choichumgming.rentcat.common.api.CommonResult;
import com.choichumgming.rentcat.dto.OrderParam;
import org.springframework.transaction.annotation.Transactional;

/**
 * 买家订单管理Service
 */

public interface OmsBuyerOrderService {

    /**
     * 根据提交信息生成订单
     */
    @Transactional
    CommonResult generateOrder(OrderParam orderParam);

    /**
     * 支付成功后的回调
     */
    @Transactional
    CommonResult paySuccess(Long orderId);

    /**
     * 自动取消超时订单
     */
    @Transactional
    CommonResult cancelTimeOutOrder();

    /**
     * 取消单个超时订单
     */
    @Transactional
    void cancelOrder(Long orderId);

    /**
     * 发送延迟消息取消订单
     */
    void sendDelayMessageCancelOrder(Long orderId);



    /**
     * 查看租用订单列表 1 2 3 4
     */
    CommonResult getBuyerList(Long userId);

}

